package com.ushine.web.component.design.chain.salary.model;

import com.ushine.web.component.design.chain.config.ChainBaseParams;
import com.ushine.web.component.design.chain.salary.StaffEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * @Author: yls
 * @Date: 2022/03/04 09:09
 * @Description: 过滤链处理逻辑的环境类：参数实体类，整个流程共享
 * @Version 1.0
 */
@Data
public class SalaryCalculateBO extends ChainBaseParams implements Serializable {
    /**
     * 参数实体
     */
    @ApiModelProperty("参数实体类")
    private SalaryParamVO salaryParamVO;

    /**
     * 薪资类
     */
    @ApiModelProperty("薪资实体类")
    private SalaryDO salaryDO;

    /**
     * 工资条类
     */
    @ApiModelProperty("工资条类")
    private SlipSalaryDetailDO slipSalaryDetailDO;

    /**
     * 是否离职
     */
    @ApiModelProperty("是否离职")
    private Boolean leaveOffice;

    /**
     * 是否实习生
     */
    @ApiModelProperty("是否实习生")
    private Boolean trainee;

    /**
     * 是否当月入职
     */
    @ApiModelProperty("是否当月入职")
    private Boolean inductionInCurrentMonth;

    /**
     * 是否补发上月薪资
     */
    @ApiModelProperty("是否补发上月薪资")
    private Boolean reissueLastMonthSalary;

    /**
     * 员工类型
     */
    @ApiModelProperty("员工类型")
    private StaffEnum staffEnum;
}
